﻿// 5145. 同色环.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://www.acwing.com/problem/content/5148/

有一个 n×m
 的方格矩阵，每个方格都有一种颜色。

颜色最多不超过 26
 种，我们将使用不同的大写英文字母来表示不同的颜色。

你的任务是在矩阵中找到一个规模不小于 4
 的同色环。

也就是说，请你在矩阵中找到 k
 个不同的方格，要求它们能够同时满足：

k≥4
k
 个方格的颜色相同。
将这 k
 个方格按某种顺序编号为 1∼k
 后，能够满足方格 1
 与方格 2
 相邻、方格 2
 与方格 3
 相邻、…、方格 k−1
 与方格 k
 相邻、方格 k
 与方格 1
 相邻。如果两个方格存在公共边，则称两个方格相邻。
例如，下图中编号的 4
 个方格就构成了一个同色环。

QQ截图20230815103515.png

请你判断，在给定矩阵中是否存在满足条件的同色环。

输入格式
第一行包含两个整数 n,m
。

接下来 n
 行，每行包含一个长度为 m
 的由大写字母构成的字符串，用来表示矩阵中每个方格的颜色。

输出格式
如果给定矩阵中存在满足条件的同色环，则输出 Yes，否则输出 No。

数据范围
前 6
 个测试点满足 2≤n,m≤10
。
所有测试点满足 2≤n,m≤50
。

输入样例1：
3 4
DDDD
DBCD
DDDD
输出样例1：
Yes
输入样例2：
3 4
EEEE
EBCE
EEDE
输出样例2：
No
输入样例3：
4 4
AAAB
CACA
CCCA
CCCA
输出样例3：
Yes
输入样例4：
7 6
XXXXXY
XYYYXY
XYXXXY
XYXYYY
XYXXXY
XYYYXY
XXXXXY
输出样例4：
Yes
*/
int main()
{
    std::cout << "Hello World!\n";
}
 